การตั้งค่า MySQL (MariaDB) ใน EFS
ครั้งนี้ ผมจะมาเขียนบทความเกี่ยวกับการตั้งค่าโฟลเดอร์ MySQL (MariaDB) ใน EFS
สิ่งที่ต้องมี
ต้องทำการติดตั้ง MySQL (MariaDB) ตามด้วยสร้าง Amazon EFS และเชื่อมต่อกับ EC2
ให้ทำเรียงตามลิงก์ด้านล่างนี้ได้เลย
- การติดตั้ง MySQL (MariaDB) และสร้าง Database ใน Amazon Linux 2
- วิธีการสร้าง Amazon EFS และเชื่อมต่อกับ EC2
เนื้อหาในบทความนี้จะสามารถทำตามได้ก็ต่อเมื่อ
- ในกรณีที่มีไฟล์ DB อยู่ใน
/var/lib/mysql
- ในกรณีที่มีการ mount EFS อยู่ใน
/mnt/efs
เป้าหมายการตั้งค่าโฟลเดอร์ MySQL (MariaDB)
ตั้งค่าโฟลเดอร์ MySQL (MariaDB) โดยการย้ายโฟลเดอร์/var/lib/mysql
ไปยัง/mnt/efs
และทำ Symbolic Link จาก MariaDB ไปยัง EFS เพื่อให้สามารถบันทึกข้อมูล DB ลงใน EFS ได้
การตั้งค่าโฟลเดอร์ MySQL (MariaDB) ใน EFS
เราจะเรียกใช้คำสั่งในโปรแกรม PuTTy ให้เปิดโปรแกรม PuTTy ขึ้นมา แล้วเริ่มทำตามขั้นตอนด้านล่างนี้ได้เลย
เรียกใช้คำสั่งนี้เพื่อหยุดการทำงานของ mysql
systemctl stop mariadb
เรียกใช้คำสั่งนี้เพื่อสร้างและเปิดการใช้งานขั้นสูงให้กับโฟลเดอร์ในefs
mkdir -p /mnt/efs chmod 777 /mnt/efs
เรียกใช้คำสั่งนี้เพื่อย้ายไฟล์จาก/var/lib/mysql
ไปยัง/mnt/efs/mysql
mv /var/lib/mysql /mnt/efs/mysql
เรียกใช้คำสั่งนี้เพื่อสร้าง Symbolic Link
ln -sf /mnt/efs/mysql /var/lib/mysql
Symbolic Link คือ ตัว Shortcut ที่เชื่อมโยงกับไฟล์หรือโฟลเดอร์ที่อยู่ที่อื่น สามารถอ่านเพิ่มเติมได้ที่ Symbolic Link คืออะไร? การสร้าง Symbolic Link ใน Linux
เรียกใช้คำสั่งนี้เพื่อเริ่มต้นระบบ mysql
systemctl start mariadb
ทดสอบการเชื่อมต่อและใช้งาน MySQL
เข้าไปยัง Prompt ของ MariaDB ด้วยคำสั่งนี้
mysql -u root -h localhost
เรียกดูข้อมูลใน Database ด้วยคำสั่งนี้
MariaDB [(none)]> show databases;
ออกจาก Prompt ด้วยคำสั่งนี้
MariaDB [(tinnakorn)]> quit
ข้อควรระวัง
ถ้าทำการ mount EFS จาก EC2 หลายๆ ครั้ง จะทำให้มีความเสี่ยงที่ฐานข้อมูลจะเสียหายเมื่อใช้ mysql และจะทำให้ช้ากว่าการใส่ไฟล์เข้าไปใน EBS
ข้อดี
เราสามารถใส่ไฟล์ที่มีความจุได้ไม่จำกัด ซึ่งจะต่างจาก EBS ที่เป็นการจ่ายตามขนาดของไฟล์ที่ได้ใส่เข้าไป
สรุป
การตั้งค่าโฟลเดอร์ MySQL (MariaDB) ใน EFS สามารถทำได้ง่ายๆ โดยการสร้างโฟลเดอร์ที่จะใช้เก็บข้อมูลของ MariaDB ใน EFS จากนั้นย้ายโฟลเดอร์ mysql ไปยังโฟลเดอร์ที่สร้างไว้ใน EFS และทำการสร้าง Symbolic Link จาก MariaDB ไปยัง EFS เพียงเท่านี้ก็สามารถที่จะใช้พื้นที่ของ EFS จัดเก็บข้อมูลของ MariaDB ได้แล้ว
นอกจากนี้ยังเป็นการเพิ่มประสิทธิภาพการใช้งานให้กับ MySQL (MariaDB) โดยทำให้จัดเก็บข้อมูลใน EFS ได้ไม่จำกัด เพราะ EFS เป็นระบบไฟล์ที่มีความยืดหยุ่นสูง